@echo off
chcp 65001 >nul
echo ======================================
echo 测试步骤3 - 解除合同提交
echo ======================================
echo.
echo 修复内容：
echo ✅ 将"删除待办任务"改为"更新状态为已处理"
echo ✅ 步骤3任务：is_handle 从 0 变为 1
echo ✅ 步骤4任务：is_handle = 0（新创建）
echo.
echo ======================================
echo 测试步骤：
echo ======================================
echo.
echo 步骤1：重启后端服务（必须！）
echo   运行: restart_backend.bat
echo.
echo 步骤2：待办任务列表
echo   访问: http://localhost/xtgz/xtgz/tasks
echo   找到步骤3的任务（is_handle=0）
echo.
echo 步骤3：点击"处理"按钮
echo   应该跳转到: http://localhost/splccs/jcht?id=99^&taskId=xxx^&ptid=xxx^&step=3^&type=1
echo   确保URL包含 ptid 参数！
echo.
echo 步骤4：填写解除合同信息
echo   - 选择解除日期
echo   - 上传解除协议文件
echo   - 点击"提交"
echo.
echo 步骤5：查看后端控制台日志
echo   应该看到：
echo   业务ID: 99
echo   合同编号: xxx
echo   文件名: xxx
echo   当前任务ID: xxx
echo   当前待办任务ID: [步骤3的任务ID]
echo   ✅ 完成工作流任务（步骤3）: xxx
echo   ✅ 更新步骤3待办任务状态为已处理: [步骤3的任务ID] ✅
echo   ✅ 查询到下一个任务: 账单调整
echo   创建待办任务（步骤4）: 步骤=4, 标题=xxx - 账单调整
echo.
echo 步骤6：验证数据库
echo   运行以下SQL：
echo.
echo   -- 检查步骤3的任务
echo   SELECT id, step_no, is_handle, title, finish_time
echo   FROM pending_tasks 
echo   WHERE bussniess_id = 99 AND step_no = 3;
echo   预期：is_handle = 1 ✅, finish_time 有值
echo.
echo   -- 检查步骤4的新任务
echo   SELECT id, step_no, is_handle, title, type
echo   FROM pending_tasks 
echo   WHERE bussniess_id = 99 AND step_no = 4;
echo   预期：is_handle = 0 ✅, title = "老人名字 - 账单调整"
echo.
echo   -- 检查合同更新
echo   SELECT contract_no, contract_status, termination_time, 
echo          termination_agreement, termination_submitter
echo   FROM contract 
echo   WHERE id = [合同ID];
echo   预期：contract_status = "已过期"
echo        termination_time = 当前时间
echo        termination_agreement = 文件名
echo        termination_submitter = 当前用户ID
echo.
echo 步骤7：刷新待办任务列表
echo   应该看到：
echo   - 步骤3的任务：is_handle = 1 ✅（已处理）
echo   - 步骤4的任务：is_handle = 0 ✅（未处理）
echo.
echo ======================================
echo 预期结果对比：
echo ======================================
echo.
echo 修复前（错误）：
echo   步骤3任务：被删除 ❌ - 历史记录丢失
echo   步骤4任务：is_handle = 0 ✅
echo.
echo 修复后（正确）：
echo   步骤3任务：is_handle = 1 ✅ - 保留历史记录
echo   步骤4任务：is_handle = 0 ✅
echo.
echo ======================================
echo 关键修复点：
echo ======================================
echo.
echo CheckOutManagementController.java （第282-295行）：
echo.
echo 修复前：
echo   pendingTasksService.deletePendingTasksById(ptId);
echo   System.out.println("✅ 删除步骤3的待办任务: " + ptId);
echo.
echo 修复后：
echo   PendingTasks currentTask = pendingTasksService.selectPendingTasksById(ptId);
echo   if (currentTask != null) {
echo       currentTask.setIsHandle(1L); // ✅ 设置为已处理
echo       currentTask.setFinishTime(new Date());
echo       pendingTasksService.updatePendingTasks(currentTask);
echo       System.out.println("✅ 更新步骤3待办任务状态为已处理: " + ptId);
echo   }
echo.
pause

